#ifndef CIRCLE_H
#define CIRCLE_H
//includes
#include "Vector.h"
#include"Rectangle.h"


namespace forme
{
	class Circle
	{
	public:
		// --- proto
		Circle(const float x, const float y, const float radius);
		Circle(const Vector2D* center, const float radius);
		bool Contains(const float x, const float y) const;
		bool Contains(const Vector2D* point) const;
		float GetX() const;
		float GetY() const;
		float GetRadiusSq() const;
		float GetRadius() const;
		void SetPosition(const Vector2D* vect);
		void SetPosition(const float x, const float y);
		void MoveBy(const Vector2D* vect);
		void MoveBy(const float x, const float y);

		bool CollidesWith(const Circle* circ) const;
		bool CollidesWith(const Rectangle* rect) const;
	private:
		Vector2D m_kPosition;
		float m_fRadius;
	};
}

#endif